// pages/database/videoPlayer/index.js
const plugin = requirePlugin('m-video')
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    speedRate: 1,
    videoUrl: '', // 视频链接（需替换为实际链接）
    videiTitle:"",
    tempFilePath: '' // 下载后的临时文件路径
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 获取视频地址（解码）
    this.setData({
      videiTitle: options.name,
      videoUrl: decodeURIComponent(options.src)
    },()=>{
      console.log(this.data.videoUrl)
      plugin.sayHello()
    });
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },

  downLoadVideo() {
    const { videoUrl } = this.data;
    console.log(videoUrl)
    if (!videoUrl) {
      wx.showToast({ title: '视频链接为空', icon: 'none' });
      return;
    }

    // 显示加载中
    wx.showLoading({ title: '下载中...' });

    // 1. 下载视频文件
    wx.downloadFile({
      url: videoUrl, // 视频链接
      timeout: 60000, // 超时时间（60秒）
      success: (res) => {
        console.log(res)
        wx.hideLoading();
        // 下载成功（res.statusCode === 200）
        if (res.statusCode === 200) {
          this.setData({ tempFilePath: res.tempFilePath });
          // 2. 下载完成后保存到相册
          this.saveToAlbum(res.tempFilePath);
        } else {
          wx.showToast({ title: '下载失败', icon: 'none' });
        }
      },
      fail: (err) => {
        wx.hideLoading();
        console.error('下载失败：', err);
        wx.showToast({ title: '下载失败，请重试', icon: 'none' });
      }
    });
  },
   // 保存视频到用户相册
   saveToAlbum(tempFilePath) {
    // 1. 先检查是否有保存到相册的权限
    wx.getSetting({
      success: (settingRes) => {
        // 没有权限，申请权限
        if (!settingRes.authSetting['scope.writePhotosAlbum']) {
          wx.authorize({
            scope: 'scope.writePhotosAlbum',
            success: () => {
              // 权限申请成功，保存视频
              this.doSaveToAlbum(tempFilePath);
            },
            fail: () => {
              // 权限被拒绝，引导用户手动开启
              wx.showModal({
                title: '权限申请',
                content: '需要您授权保存视频到相册',
                success: (modalRes) => {
                  if (modalRes.confirm) {
                    wx.openSetting(); // 打开设置页让用户开启权限
                  }
                }
              });
            }
          });
        } else {
          // 已有权限，直接保存
          this.doSaveToAlbum(tempFilePath);
        }
      }
    });
  },

  // 执行保存到相册的操作
  doSaveToAlbum(tempFilePath) {
    wx.saveVideoToPhotosAlbum({
      filePath: tempFilePath,
      success: () => {
        wx.showToast({ title: '已保存到相册' });
      },
      fail: (err) => {
        console.error('保存失败：', err);
        wx.showToast({ title: '保存失败', icon: 'none' });
      }
    });
  }
})